package com.mongdb.demo.model;

import lombok.Data;
import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.index.CompoundIndex;
import org.springframework.data.mongodb.core.index.CompoundIndexes;
import org.springframework.data.mongodb.core.mapping.DBRef;
import org.springframework.data.mongodb.core.mapping.Document;

import java.util.List;


/*指定集合名称*/
@Document(collection = "sys_user")
/* 指定索引建立，提高查询速度 */
@CompoundIndexes(
        {
                @CompoundIndex(name = "sys_user_index",def = "{'password':-1,'user_id':1}")//建立复合索引,1=正序，-1=倒叙
        })
@Data
public class SysUser {
    //@Field("userid") //给映射存储到 mongodb 的字段取别名 ,在 java bean 中字段名为 firstName，存储到 mongo 中 key 为 fName
    private String user_id;
    private String user_name;
    private String password;
    @Transient //被该注解标注的，将不会被录入到数据库中。只作为普通的字段。
    private String createTime;

    //@DBRef
    private List<SysUserDetails> details;

}
